package com.gxuwz.stats.service.impl;

import com.alibaba.excel.EasyExcel;
import com.gxuwz.stats.entity.TotalWork;
import com.gxuwz.stats.entity.TotalWorkExcelDTO;
import com.gxuwz.stats.service.SheetHandler;
import com.gxuwz.stats.service.SheetName;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.io.ByteArrayInputStream;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;

@Service
@SheetName("总工作量")
public class TotalWorkloadHandler implements SheetHandler {
    @Autowired
    private TotalWorkServiceImpl workloadService;

    @Override
    public void handle(Sheet sheet) {
        // 将 Apache POI 的 Sheet 转换为 EasyExcel 的输入流（伪代码）
        InputStream inputStream = convertSheetToInputStream(sheet);

        // 使用 EasyExcel 读取数据
        EasyExcel.read(inputStream, TotalWorkExcelDTO.class, new TotalWorkExcelListener(workloadService))
                .sheet("总工作量")  // 指定 Sheet 名称
                .doRead();
    }

    private InputStream convertSheetToInputStream(Sheet sheet) {
        // 实现将 POI Sheet 转换为 InputStream 的逻辑（可能需要借助临时文件）
        // 此处仅为示例，实际需根据业务实现
        return new ByteArrayInputStream(new byte[0]);
    }
}
